Cấu trúc mã vạch EAN-13

Quy ước: Các bit có giá trị 1 được in bằng mực đen thành một đường thẳng đứng, các bit có giá trị 0 không được in (hoặc được in bằng mực trắng) thành một đường thẳng đứng có cùng độ rộng với bit có giá trị 1.

Cấu trúc của mã vạch EAN-13 như sau:

Các vạch bảo vệ trái - 6 số kể từ số thứ hai đến số thứ bảy - các vạch bảo vệ trung tâm - 5 số tiếp theo (8-12)- số kiểm tra - các vạch bảo vệ phải

Phía trước các vạch bảo vệ trái và phía sau các vạch bảo vệ phải luôn luôn phải có các khoảng lặng trắng để tránh việc máy quét đọc sai.

Việc mã hóa của 6 số từ vị trí thứ 2 đến vị trí thứ 7 phụ thuộc vào giá trị của số đầu tiên theo quy tắc chẵn -lẻ dưới đây.

Số đầu tiên234567
0LẻLẻLẻLẻLẻLẻ
1LẻLẻChẵnLẻChẵnChẵn
2LẻLẻChẵnChẵnLẻChẵn
3LẻLẻChẵnChẵnChẵnLẻ
4LẻChẵnLẻLẻChẵnChẵn
5LẻChẵnChẵnLẻLẻChẵn
6LẻChẵnChẵnChẵnLẻLẻ
7LẻChẵnLẻChẵnLẻChẵn
8LẻChẵnLẻChẵnChẵnLẻ
9LẻChẵnChẵnLẻChẵnLẻ

Các số từ vị trí 8 đến vị trí thứ 13 được mã hóa theo chuỗi đảo ngược của mã hóa lẻ (xem bảng dưới đây) của số có giá trị tương ứng theo bảng dưới đây. Ví dụ số 0 có mã hóa lẻ là "0001101" thì khi được mã hóa ở các vị trí từ 8 đến 13 sẽ là "1110010".

Các vạch bảo vệ trái và phải có giá trị bit là 101. Các vạch bảo vệ trung tâm có giá trị bit là 01010.

Mã hóa chẵn lẻ

Chuỗi mã hóa chẵn hay lẻ của các giá trị số từ 0 đến 9 được liệt kê trong bảng sau:

Giá trị sốLẻChẵn
000011010100111
100110010110011
200100110011011
301111010100001
401000110011101
501100010111001
601011110000101
701110110010001
801101110001001
900010110010111

Nó được áp dụng để in các số từ vị trí thứ 2 đến vị trí thứ 7.